Optimized Algorithms for Incremental Analysis of Logic Programs

نویسندگان

  • Germán Puebla
  • Manuel V. Hermenegildo
چکیده

Abs t r ac t . Global analysis of logic programs can be performed effectively by the use of one of several existing efficient algorithms. However, the traditional global analysis scheme in which all the program code is known in advance and no previous analysis information is available is unsatisfactory in many situations. Incrementa! analysis of logic programs has been shown to be feasible and much more efficient in certain contexts than traditional (non-incremental) global analysis. However, incremental analysis poses additional requirements on the fixpoint algorithm used. In this work we identify these requirements, present an important class of strategies meeting the requirements, present sufficient a priori conditions for such strategies, and propose, implement, and evalúate experimentally a novel algorithm for incremental analysis based on these ideas. The experimental results show that the proposed algorithm performs very efficiently in the incremental case while being comparable to (and, in some cases, considerably better than) other state-of-the-art analysis algorithms even for the non-incremental case. We argüe that our discussions, results, and experiments also shed light on some of the many tradeoffs involved in the design of algorithms for logic program analysis.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Incremental Algorithms for Optimizing Model Computation Based on Partial Instantiation

It has been shown that mixed integer programming methods can e ectively support minimal model, stable model and well-founded model semantics for ground deductive databases. Recently, a novel approach called partial instantiation has been developed which, when integrated with mixed integer programming methods, can handle non-ground logic programs. The goal of this paper is to explore how this in...

متن کامل

Incremental Evaluation of Tabled Logic Programs

Tabling has emerged as an important evaluation technique in logic programming. Currently, changes to a program (due to addition/deletion of rules/facts) after query evaluation compromise the completeness and soundness of the answers in the tables. This paper presents incremental algorithms for maintaining the freshness of tables upon addition or deletion of facts. Our algorithms improve on exis...

متن کامل

Dissertation : Incremental Maintenance of Recursive Views with Applications to Tabled Logic Programming

Vulnerability analysis using dynamic attack graphs, dynamic binary analysis for mobile code security, incre-mental bisimulation algorithm. Development of algorithms for incremental evaluation of tabled logic programs and its application to program analysis, generation and analysis of multiple counterexamples for error cause localization, model checking security-relevant properties of sequential...

متن کامل

Incremental Evaluation of Tabled Prolog: Beyond Pure Logic Programs

Tabling, or memoization, enables incremental evaluation of logic programs. When the rules or facts of a program change, we need to recompute only those results that are affected by the changes. The current algorithms for incrementally maintaining memo tables treat insertion of facts/rules differently from their deletion. Hence these techniques cannot be directly applied for incremental evaluati...

متن کامل

A Local Algorithm for Incremental Evaluation of Tabled Logic Programs

This paper considers the problem of efficient incremental maintenance of memo tables in a tabled logic programming system when the underlying data are changed. Most existing techniques for incremental evaluation (or materialized view maintenance in deductive databases) consider insertion and deletion of facts as primitive changes, and treat update as deletion of the old version followed by inse...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 1996